package com.chalk.model;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * 平台菜单信息(SysMenu)实体类
 *
 * @author maxiaoqiang
 * @since 2019-03-22 17:35:28
 */
@ApiModel(value = "SysMenu", description = "平台菜单信息")
@Data
@TableName("t_sys_menu")
public class SysMenu {

    /**
     * 主键
     */
    @ApiModelProperty(name = "menuId", value = "主键")
    @TableId(type = IdType.ID_WORKER_STR)
    private String menuId;


    /**
     * 名称
     */
    @ApiModelProperty(name = "name", value = "名称")
    @TableField("name")
    private String name;

    /**
     * 类型(1 菜单  2 功能)
     */
    @ApiModelProperty(name = "type", value = "类型(1 菜单  2 功能)")
    @TableField("type")
    private Integer type;

    /**
     * 权限标识
     */
    @ApiModelProperty(name = "permission", value = "权限标识")
    @TableField("permission")
    private String permission;

    /**
     * 前端URL
     */
    @ApiModelProperty(name = "path", value = "前端URL")
    @TableField("path")
    private String path;

    /**
     * 请求URL
     */
    @ApiModelProperty(name = "url", value = "请求URL")
    @TableField("url")
    private String url;

    /**
     * 请求方法
     */
    @ApiModelProperty(name = "method", value = "请求方法")
    @TableField("method")
    private String method;

    /**
     * 父ID
     */
    @ApiModelProperty(name = "parentId", value = "父ID")
    @TableField("parent_id")
    private String parentId;

    /**
     * 图标
     */
    @ApiModelProperty(name = "icon", value = "图标")
    @TableField("icon")
    private String icon;

    /**
     * 操作人类型（0、系统自动操作，1、平台人员操作，2、商家人员操作，3、会员操作）
     */
    @ApiModelProperty(name = "operatorType", value = "操作人类型（0、系统自动操作，1、平台人员操作，2、商家人员操作，3、会员操作）")
    @TableField("operator_type")
    private Integer operatorType;

    /**
     * 操作人id（根据操作人类型会对应不同的表记录）
     */
    @ApiModelProperty(name = "operatorId", value = "操作人id（根据操作人类型会对应不同的表记录）")
    @TableField("operator_id")
    private String operatorId;

    /**
     * 创建时间
     */
    @ApiModelProperty(name = "createTime", value = "创建时间")
    @TableField("create_time")
    private Date createTime;

    /**
     * 修改时间
     */
    @ApiModelProperty(name = "updateTime", value = "修改时间")
    @TableField("update_time")
    private Date updateTime;

    /**
     * 是否已删除（逻辑删除，1、已删除，0、未删除，默认0）
     */
    @ApiModelProperty(name = "isDeleted", value = "是否已删除（逻辑删除，1、已删除，0、未删除，默认0）")
    @TableField("is_deleted")
    private Integer isDeleted;

}